System and method for incorporating mortality risk in an investment planning model

ABSTRACT

A method for computing possible future values of a portfolio of an investor including (a) receiving user inputs comprising an initial value of a portfolio and a current age of an investor; (b) randomly drawing a number between 0 to 1; (c) determining a mortality rate of the investor in accordance with a mortality table based on the current age of the investor; (d) comparing the randomly drawn number with said determined mortality rate using a preselected logical relation to define the current age as the age of death of the investor; (e) computing a future value of the portfolio using the age of death defined in step (d)( 1 ), a predetermined rate of return, and the initial value of the portfolio; and (f) outputting the computed future value of the portfolio.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a Divisional of U.S. patent application Ser. No.11/225,219 filed Sep. 13, 2005 now U.S. Pat. No. 7,603,306, which is aContinuation of U.S. patent application Ser. No. 09/625,702 filed Jul.25, 2000, now U.S. Pat. No. 6,947,904 issued Sep. 20, 2005, which claimspriority from U.S. Provisional Patent Applications Ser. Nos. 60/146,532and 60/168,331, which were filed on Jul. 30, 1999 and Dec. 1, 1999respectively, which applications are herein incorporated by reference intheir entirety.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to financial management systems and, moreparticularly, to a method and an apparatus for effecting a retirementplanning system incorporating means for planning, analyzing, andpreparing reports on an investment portfolio comprised of variousfinancial assets owned by one or more investors.

2. Description of the Related Art

Retirement planning is a frustrating exercise because the future isuncertain. Nonetheless, prior art retirement calculators often employdeterministic models that output seemingly precise predicted value of aportfolio. Typically, a user is required to input a number of parameterssuch, for example, as a fixed rate of inflation, a fixed rate of return,and a specified retirement age. Using these user-input values, the priorart calculators compute a future value of the portfolio at the specifiedretirement age or at some other specified point in time. This computedportfolio value, however, is of limited use to an investor, or may evenbe misleading to the investor, because the chance of achieving thecomputed value is not at all certain, but lies somewhere between 0% and100%. As any competent investor knows, future rate of return or rate ofinflation varies from month-to-month and from year-to-year, depending ona myriad of highly variable economic parameters. Moreover, one's actuallife span may be shorter or longer than that published in a lifeexpectancy table, thereby creating further uncertainties in the computedportfolio value.

U.S. Pat. No. 5,918,217 to Maggioncalda et al. discloses a financialadvisory system for assisting an investor to select a mix of financialproducts that would achieve a specified retirement goal. The system hasa user interface that enables the investor to interactively explore howchanges in one or more input decisions such as risk tolerance, savingslevel, and retirement age affect one or more output values such as aprobability of achieving a financial goal. The system further includes asimulation module that generates a probability distribution for aprojected asset valuation. However, Maggioncalda et al. does notdisclose, for example, the use of Monte Carlo simulation techniques tovary the retirement age of the investor to more realisticallydemonstrate the chances of achieving the investor's retirement goals.

Accordingly, there is a need for a retirement planning system that usesMonte Carlo techniques to vary the life span of an investor and/or tovary the rate of return of a portfolio so as to more completely describean investor's chances of achieving a retirement goal.

SUMMARY OF THE INVENTION

An object of the present invention is to provide an easy-to-use and acost-effective method and apparatus for effecting an improved financialmanagement system that enables a user (e.g. an investor) torealistically predict or project the future value of an investmentportfolio while taking into consideration variations in the rate ofreturn of the investment portfolio and/or mortality risks of theinvestor(s) over time.

According to one aspect of the invention, the inventive system computespossible future values of a portfolio while varying an investor's lifespan and the portfolio's rate of return using Monte Carlo simulationtechniques. The portfolio may consist of assets owned by a singleinvestor or jointly by a plurality of investors.

According to another aspect of the invention, the inventive systemrandomly generates a rate of return for a subdivided time period T_(S),such for example, as a year or a month, from a user-supplieddistribution of rates of return such as historical returns or alognormal distribution having a specified mean and standard deviation.

According to still another aspect of the invention, the inventive systemproduces possible future returns or values of an investment portfolio byvarying hypothetical life spans of the investor over a plurality oftrials. The system varies the length of each trial by randomly (orpseudo-randomly) generating a number between (and including) 0 to 1 ineach trial for each investor and comparing the generated number with acorresponding probability of dying (i.e. mortality rate) of eachinvestor using a mortality table. An investor's hypothetical life in atrial is terminated if his/her mortality rate is greater than or equalto the randomly generated number; otherwise, the investor lives to anage of death indicated by the mortality table in accordance with thegenerated number. A trial ends when the hypothetical lives of all jointinvestors are terminated in the trial. Optionally, a random (orpseudo-random) number is generated for each investor at the beginning ofeach subdivided period T_(S), and which is then compared to a chance ofdying from the mortality table so as to determine whether the investorlives the upcoming subdivided period T_(S).

According to yet another aspect of the invention, the inventive systememploys user-specified mortality rates or mortality factors (e.g. age,sex, and race) to modify published mortality rates so as to moreaccurately model an investor's anticipated life span.

According to still another aspect of the invention, the inventive systemcomputes net cash flow of a portfolio, while taking into accountscheduled contributions and withdrawals by the investor(s) during aspecified period.

The inventive system advantageously produces useful results such as thefollowing:

1. the value of a portfolio during each subdivided period in each trial;

2. the value of a portfolio at the end of each trial;

3. whether a portfolio, in each trial, has met a stated investmentobjective;

4. the probability of meeting (or not meeting) an investment objectivefor all trials;

5. the distribution of portfolio values over a specified period for eachtrial and the remainder value of the portfolio after all specifiedtrials are completed;

6. the age-at-death of each investor at the end of each trial;

7. the distribution of each investor's age-at-death for all trials;

8. the distribution of ages d the investors in the group for all trials;and

9. the probability of each investor living to a specified age.

In one embodiment, there is provided a retirement planning method forcomputing possible future values of a portfolio of an investor. Themethod includes the steps of (a) receiving a plurality of user inputscomprising an initial value of the portfolio and a current age of theinvestor; (b) providing data indicating cumulative probabilities ofliving to an age of death and/or cumulative probabilities dying at anage of death for persons of a given age group; (c) randomly drawing anumber between and including 0 to 1 for the investor; (d) defining therandomly drawn number as either a cumulative probability of living to anage of death or a cumulative probability of dying at an age of death;(e) determining an age of death of the investor in accordance with thedata based on the current age of the investor and the randomly drawnnumber; (f) computing a future value of the portfolio using the age ofdeath of the investor determined in step (e), a predetermined rate ofreturn, and the initial value of the portfolio; and (g) outputting thecomputed future value of the portfolio.

In another embodiment, a retirement planning method for computing apossible future value of a portfolio of an investor includes the stepsof:

(a) receiving user inputs comprising an initial value of the portfolioand a current age of the investor;

(b) randomly drawing a number between 0 to 1 (which may include one ormore end points);

(c) determining a mortality rate of the investor in accordance with amortality table based on the current age of the investor;

(d) comparing the randomly drawn number with the determined mortalityrate using a preselected logical relation:

-   -   (1) if the randomly drawn number satisfies the preselected        logical relation with the determined mortality rate of the        investor, defining the current age as the age of death of the        investor;    -   (2) if the randomly drawn number does not satisfy the        preselected logical relation with the determined mortality rate,        advancing the current age of the investor to a next age group        indicated in the mortality table and repeating steps (b) through        (d);

(e) computing a future value of the portfolio using the age of deathdefined in step (d)(1), a predetermined rate of return, and the initialvalue of the portfolio; and

(f) outputting the computed future value of the portfolio.

In yet another embodiment, a retirement planning method for computing apossible future value of a portfolio of an investor, comprises the stepsof:

(a) receiving user inputs comprising an initial value of the portfolioand a current age of the investor;

(b) randomly drawing a number between 0 to 1 (which may include one ormore end points) for the investor;

(c) determining a mortality rate of the investor in accordance with amortality table based on the current age of the investor;

(d) comparing the randomly drawn number with said determined mortalityrate using a preselected logical relation such that:

-   -   (1) if the randomly drawn number satisfies said preselected        logical relation with said determined mortality rate of the        investor, define the current age as the age of death of the        investor, and output a current value of the portfolio as a        future value of the portfolio;    -   (2) if the randomly drawn number does not satisfy said        preselected logical relation with said determined mortality        rate, compute a current value of the portfolio using a        predetermined rate of return for a predetermined period, advance        the current age of the investor by another predetermined period,        and repeat steps (b) through (d).

In still another embodiment, a retirement planning method for computinga possible future value of a portfolio of a plurality of jointinvestors, includes the steps of:

(a) receiving user inputs comprising an initial value of the portfolio,a current age of a first joint investor, and a current age of a secondjoint investor;

(b) randomly drawing a number between 0 to 1 (which may include one ormore end points) for each of the first and second joint investors;

(c) determining a mortality rate of each of the first and second jointinvestors in accordance with a mortality table based on the current ageof the first and second joint investors;

(d) comparing the randomly drawn numbers of the first and second jointinvestors with corresponding mortality rates determined for the firstand second joint investors in step (c) using a preselected logicalrelation such that:

-   -   (1) if both of the randomly drawn numbers of the first and        second joint investors satisfy the preselected logical relation        with said mortality rates of the first and second joint        investors respectively, define the current age of the first and        second joint investors as the age of death of the first and        second joint investors and output a current value of the        portfolio as a future value of the portfolio;    -   (2) if only one of the randomly drawn numbers does not satisfy        the preselected logical relation with said determined mortality        rate:        -   (i) compute a current value of the portfolio using a            predetermined rate of return for a predetermined period;        -   (ii) advance the current age of that joint investor whose            randomly drawn number does not satisfy said preselected            logical relation by another predetermined period;        -   (iii) randomly draw a number between 0 to 1 (which may            include one or more end points) for that joint investor;        -   (iv) determine the mortality rate of that joint investor in            accordance with the mortality table based on the current age            of that joint investor determined in step (ii);        -   (v) if the randomly drawn number satisfies the preselected            logical relation with the mortality rate determined in step            (iv), define the current age of that joint investor as the            age of death of that joint investor, and output the current            value of the portfolio as a future value of the portfolio;            and        -   (vi) if the randomly drawn number does not satisfy the            preselected logical relation with the mortality rate            determined in step (iv), repeat steps (i) through (vi) for            another predetermined period.

Definitions or descriptions of some key terms are as follows:

Mortality table: a table containing the probability that a person whoreaches a specified age dies within the specified period. For example, atable may show that a person who reaches the age of 50 has a 0.30%chance of dying while age 50.

Vitality table: a table containing the probability that a person whoreaches a specified age lives through the specified period. Theseprobabilities are equal to 100% less the corresponding probability in amortality table.

Mortality table with Cumulative Probabilities: a table containing theprobability that a person will not live to a specified age (i.e. diebefore the specified age). For example, such a table may show that aperson has a 40% probability of not reaching age 75 (dying before age75). This type of table may be derived from the mortality table.

Vitality table with Cumulative Probabilities: a table containing theprobability that a person will live to a specified age. For example,such a table may show that a person has a 60% probability of reachingage 75. This person will have a higher probability of reaching youngerages, and a lower probability of reaching higher ages. This type oftable may be derived from the mortality table.

Joint mortality table: a table containing the probability that Person 1will die at Age X and Person 2 will die at Age Y. Such a table may beconstructed from mortality table for each person. A mortality table fora Person 1 would have probabilities of dying at ages X+1 through age 110(or some other specified age). Such a table would contain 110-X entries.A joint mortality table would have probabilities for every possible pairof ages at death. For a table up to age 110, this would be[(110-X)*(110-Y)] probabilities. From our perspective, the two tablesboth contain probabilities that an event will happen. The mortalitytable gives the probability that a person dies at a given age. The jointmortality table gives the probability that two persons die at twospecified ages. The joint mortality table can be used to construct ajoint mortality table with cumulative probabilities.

Other objects and features of the present invention will become apparentfrom the following detailed description considered in conjunction withthe accompanying drawings. It is to be understood, however, that thedrawings are designed solely for purposes of illustration and not as adefinition of the limits of the invention, for which reference should bemade to the appended claims. It should be further understood that thedrawings are not necessarily drawn to scale and that, unless otherwiseindicated, they are merely intended to conceptually illustrate thestructures and procedures described herein.

BRIEF DESCRIPTION OF THE DRAWINGS

In the drawings, wherein like reference characters denote similarelements and method steps throughout the Figures:

FIG. 1 is a block diagram of a presently preferred embodiment of theinventive system;

FIGS. 2A-2F provides a flow chart of the basic steps in one embodimentof the inventive method for financial planning;

FIGS. 3A-3F provides a flow chart of the basic steps in anotherembodiment of the inventive method for financial planning; and

FIG. 4 is a graphical representation of an exemplary mortality tableemployed by the inventive system and method.

DETAILED DESCRIPTION OF THE PRESENTLY PREFERRED EMBODIMENTS

The present invention is directed to a data processing system for use bya financial advisor or investor(s) for investment planning such, forexample, as retirement planning. The inventive data processing system isconfigured to apply Monte Carlo simulation techniques to compute orpredict possible future values of one or more investment portfolioswhile varying an investor's life span and/or rates of return during eachhypothetical life span of an investor. A portfolio may be owned entirelyby a single investor or jointly by a group of investors. The possiblefuture values of the investment portfolio are calculated for a number oftrials (e.g. 1000), with each trial representing a possible (orhypothetical) life of the single investor or a “joint” life of the groupof investors (e.g. a married couple). The system may also take intoaccount cash flow including, without limitation, contributions by aninvestor during his/her working years and withdrawals by the investorduring his/her retirement years.

In a preferred embodiment, the system randomly or pseudo-randomlygenerates a rate of return from data representing historical returns ora user-specified distribution such, for example, as a lognormaldistribution having a specified mean and standard deviation. (It isnoted that the terms “random” and “pseudo-random” are usedinterchangeably herein.) The system also randomly or pseudo-randomlygenerates a number between 0 to 1 (e.g. a number greater than zero andless than one and which may include one or more end points) for eachinvestor and compares the randomly generated number with another numberrepresenting the investor's chance of dying (from, for example, amortality table) at the beginning of each trial, for use in determiningwhether the investor lives in that trial and, if so, for how long. Themortality table may be based on published mortality rates thatpreferably take into account such mortality factors as, for example,gender, race, and sex. Alternatively, the mortality table may include orcomprise mortality rates specified by the user. Instead of using amortality table, the system includes methods f randomly generating agesat death, as explained more fully below, or the system may assume afixed life span, as specified by the user, for each investor for alltrials. In the latter case, only the rates of return are varied duringeach trial.

Referring now to the drawings, FIG. 1 depicts a data processing system10 in accordance with the present invention for effecting investmentplanning and implementing the inventive method. The data processingsystem 10 may comprise, by way of illustrative example, a personal ordigital computer or the Elke, and includes a data storage device 12 suchas a memory device for storing one or more databases and a centralprocessing unit (CPU) 14 for processing data. An input device 16 (e.g. akeyboard and/or a mouse) and an output device 18 (e.g. a monitor and/ora printer) are connected to CPU 14 through an input/output port 20.

The CPU 14 typically comprises, without limitation, arithmetic logicunits AU 22, AU 24, and AU 26. AU 22 is configured to store and/orretrieve data from the database(s) stored in data storage device 12.These database(s) may include information such, for example, ashistorical return data for various asset classes or investmentinstruments (e.g. long-term corporate and government bonds, or large capstocks), and a distribution of returns such as a lognormal distributionwith a user-specified mean (e.g. 8%) and a user-specified standarddeviation (e.g. 9%). The database(s) may further include mortalityrates, published and/or user-specified, and mortality factors based onage, sex, race, health, etc. for modifying the mortality rates. Insteadof or in addition to these mortality rates, database(s) may also includecumulative probabilities of living to an age of death and/or cumulativeprobabilities of dying at an age of death. AU 24 is configured tomanipulate the retrieved data by, for example, calculating incrementalincreases and decreases of an investment portfolio based on a rate ofreturn. AU 26 is configured to generate a random or a pseudo-randomnumber for comparison with, for example, another number representing themortality rate of an investor, the purpose of which comparison willbecome apparent as this disclosure proceeds.

FIGS. 2A-2F illustrate in flow chart format the basic steps of a method,in accordance with the invention and, by way of example, implementedusing the data processing system 10, for effecting financial planningwith respect to a financial portfolio. The inventive method ispreferably carried out in the form of a computer software programencoded on a machine-readable medium (e.g. a CD-ROM) and/or stored in aprogram memory of the computing device. Although the steps describedherein specifically assume by way of illustration a portfolio jointlyowned by a group of investors as, for example, a married couple, it willbe readily apparent to the ordinarily skilled artisan that these stepsmay be readily modified for use with a portfolio owned by a singleinvestor.

As seen in FIG. 2A, the inventive method starts at block 100 andrequests that the user input for each investor (I) the initial values ofinvestment portfolios, mortality factors (such for example as age, sex,race, and smoking habits), and anticipated savings (or contributions)and withdrawals over a specified period of time, as indicated at block102. The system may also request that the user specify that the systemuse a particular type of distribution of rates of return as, forexample, a lognormal distribution, historical returns, or any otherart-recognized rate-of-return distribution. Preferably, the database(s)include a number of such distributions for selection by the user. Themethod then proceeds to block 104 to receive input from the userspecifying the number of trials (N) to be run for each simulation. Next,in block 106, the user is asked whether to assume a fixed life span foreach investor.

If the response to the block 106 query is positive, the method requestsat block 108 (FIG. 2B) that the user input the age-at-death of eachinvestor, i.e. the anticipated life span of each investor. The systemdiscretizes time at block 110, as by dividing the longest life span(specified by the user) into M subdivided periods with each subdividedperiod having a duration of, for example, a month, a year, or a fractionthereof. The user may specify the value of M, which represents the totalnumber of subdivided periods. At block 112, a counter K for counting thenumber of subdivided periods is initialized to a value of 1 or anysuitable initial value K₀. The method then compares (at block 114) thecurrent value of K (e.g. K₀) with the value of M; if the current valueof K is not greater than M—i.e. K is either less than or equal to M,then the method proceeds to block 116 (FIG. 2 c) and randomly (orpseudo-randomly) generates a rate of return (R) from, for example, alognormal distribution or any other art-recognized distribution for eachportfolio for the current subdivided period. The value of each portfoliois then adjusted for the current subdivided period at block 118. Cashflow for each portfolio is determined based on each investor's estimatedor anticipated contributions, withdrawals and/or taxes owed (or accrued)for the current subdivided period, as indicated at block 120. The methodthen proceeds to block 122 and adjusts the value of each portfolio bythe cash flow determined at block 120. The age of 5 each investor isthen incremented by the current subdivided period at block 124.

As seen at block 126 in FIG. 2B, the method increments counter K by, forexample, an integer value of “1” in block 126 and then returns to block114. As long as at least one investor is still living (i.e. K is lessthan or equal to M), the method repeats the steps at blocks 116 through126 for each successive subdivided period. When the query at block 114indicates, on the other hand, that K is greater than M, i.e. the currentsubdivided period is beyond the specified life span of the longestliving investor, then the method stores and displays results, as shownat block 128, and ends the current trial at block 129. The method thendetermines whether N trials have been completed in block 130. If so, thesimulation run is ended. If not, the method proceeds to block 131 andreinitializes parameters, that include, for example, the current age ofeach investor and current subdivided period, to their initial values andstarts another trial at block 112.

Where the answer to the query of block 106 (FIG. 2A) is negative, i.e.if the user does not wish to assume a fixed life span for each investor,then the method proceeds to block 132 of FIG. 2D. There, the methoddiscretizes or subdivides time into a plurality of subdivided periodsand initializes trial counter J with J₀ having an integer value of, forexample, 1. At block 134, the method looks up the chance of dying(L_(MI)) from a stored database for each investor (I). A random or apseudo-random number (L_(RI)) is then generated (block 136), having avalue between 0 to 1 (which may include one or more end points) for eachinvestor.

At block 138, the current value of L_(MI) is compared to the currentvalue of L_(RI) according to a preselected logical relation such, forexample, as “greater than or equal to” (i.e. “≧”). For example, if it isdetermined that L_(MI) is not greater than or equal to L_(RI) for allinvestors, then the method proceeds to block 140 (FIG. 2E) and assumes(at block 140) that at least one investor (I) is still alive in thecurrent subdivided period. It should be noted that the duration of thesubdivided period may be preset by the system or specified by the userat the beginning of each simulation run. In any event, the method atblock 142 randomly (or pseudo-randomly) generates or draws a rate ofreturn (R) from a stored lognormal distribution or other assumed orselected distribution for each portfolio for the current subdividedperiod. Next, at block 144 the value of each portfolio is adjusted bythe randomly generated rate of return (R) for the current subdividedperiod. At block 146, the method computes cash flow based on eachinvestor's estimated or anticipated contribution, withdrawal and/ortaxes owed for the current subdivided period for each portfolio. Then,at block 148 (FIG. 2F), the value of each portfolio is adjusted by thecomputed cash flow. The age of each investor is next incremented, as bythe next subdivided period and is advanced to the following subdividedperiod, as shown at block 150, at which point the method returns toblock 134 (FIG. 2D). The steps of blocks 138 through 150 are repeateduntil each investor's L_(MI) is greater than or equal to his or hercorresponding L_(RI). The method then assumes that all investors in thecurrent trial have died (block 152), and the results are stored anddisplayed (block 154). The current trial then terminates at block 156.The method proceeds to block 158 and determines whether N trials havebeen completed. If so, the simulation run is ended. If not, the methodgoes to block 134.

The computed results may be displayed on a monitor or printed in atabulated and/or graphical form. Based on these results, the user mayrevise user-specified parameters such as the average and standarddeviation of the rate-of-return distribution and/or the age-at-death ofeach investor and then the have system execute another simulation run.The user can thus run multiple simulations until acceptable results havebeen obtained.

FIGS. 3A-3F illustrate the basic steps of another embodiment of theinvention for effecting financial planning using, again by way ofillustrative example, the data processing system 10.

As depicted in FIG. 3A, the method begins at block 200 and requests atblock 202 that the user input initial values comprising or including,for example, current values of investment portfolios, anticipatedinflation rate, annual savings, retirement expenses, mortality factors(or anticipated age-at-death) of each investor, etc. Preferably,database(s) comprising a mortality table incorporating various mortalityfactors and a distribution of rates of return (e.g. lognormaldistribution and/or historical returns) are stored in data storage suchas the storage device 12. Where a lognormal distribution is employed, auser may specify a mean and standard deviation so as to vary theanticipated risk and return associated with each investment portfolio.At block 204, the user is asked to specify the number of trials for eachsimulation run and, at block 206, whether to assume a fixed life spanfor each investor or to employ a mortality table to determine theanticipated life span of each investor.

If a fixed life span is specified at block 206, then the user mustspecify (at block 208) the age-at-death of each investor. At block 210,the system discretizes or divides time into a plurality of subdividedperiods (as for example by defining units of time in years, months etc.)so that growth of the investment portfolios may be expressed in terms ofthe subdivided periods. At block 212, trial counter J is initialized forcounting the number of trials prior to a simulation run.

At block 214, the method queries whether the current age of eachinvestor exceeds his/her specified age-at-death. If the answer isnegative, the method proceeds to block 216 (FIG. 3C) and randomly (orpseudo-randomly) generates or draws a rate of return (R) from the storeddatabase(s) which includes, by way of example, a rate-of-returndistribution for each portfolio for the current subdivided period. Next,at block 218 the method adjusts the value of each portfolio by the rateof return (R) for the current subdivided period. At block 220, the cashflow is computed based on each still-living investor's estimatedcontributions (e.g. savings), withdrawals (e.g. expenses) and/or taxesowed for the current subdivided period. If an investor's hypotheticallife is terminated, the cash flow (savings and withdrawal) attributableto that investor will also be terminated. The method 10 then proceeds toblock 222 and adjusts the value of each portfolio by the cash flowcomputed at block 220. At block 224, the system increments the age ofeach still-living investor by an amount equal to the next subdividedperiod and advances the current subdivided period (e.g. 1999 A.D.) tothe next subdivided period (e.g. 2000 A.D.). The method then loops backto block 214 to determine whether the current age of each investorexceeds his/her specified age-at-death. If only one of the investors hasdied, that information is preferably stored (block 226) and ends allcash flow attributable to that investor. The steps of blocks 216 through224 are then repeated until all investors' hypothetical lives haveterminated, at which point, the method proceeds to block 226 and storesthe results from the previous steps including, for example, the resultsof blocks 216 through 224. Each current trial (i.e. the J^(th) trial)ends at block 228 and, at block 230, the trial counter J is incrementedas by an integer value of 1. At block 232, the system 10 determineswhether the specified N trials have been completed; if J is greater thanN, then the simulation run ends at block 234. If, on the other hand, Jis less than N, the method reinitializes (at block 236) parameters suchas the current age of each investor and the value of current subdividedperiod and the steps of blocks 214-232 are repeated.

Where the answer to the query of block 206 (FIG. 3A) is negative, themethod proceeds to block 238 (FIG. 3D) and discretizes or divides timeinto a plurality of subdivided periods. As preliminarily described inrelation to the embodiment of FIGS. 2A-2F, this process may beautomatically set. In any event, the system initializes trial counter Jwith an initial value J₀ (e.g. an integer value of 1) at block 240 andthen, at block 242, looks up the chance of dying (L_(MI)) in the nextsubdivided period for each investor from, for example, a storedmortality table. The mortality table may incorporate mortality factors(e.g. age, sex, race, etc.) so that the method can more accuratelypredict the life span of each investor. At block 244, a random orpseudo- random number (L_(RI)) between 0 to 1 (which may include one ormore end points) is generated for the next subdivided period for eachinvestor. Each investor's L_(MI) is then compared with his/her L_(RI) atblock 246 according to a preselected logical relation such, for example,as “greater than or equal to” (i.e. “≧”). For example, if the investor'sL_(MI) is greater than or equal to his/her L_(RI) , that investor ispresumed dead for the remainder of the current trial. If, on the otherhand, the L_(MI) of an investor is less than his or her L_(RI) , themethod proceeds to block 248 (FIG. 3E) to determine his/her age-at-deathusing, for example, a stored or otherwise available mortality table orchart containing probabilities of living to a certain age orprobabilities of dying at a certain age for a person of a particular agesuch as that shown in FIG. 4 for a fifty-year-old man.

In accordance with a particularly advantageous embodiment of theinvention, the method determines the age-at-death of an investor bygenerating a random (or pseudo-random) number LI for each subsequentsubdivided period and compares that number with a correspondingmortality rate L, for that subdivided period. The method continues tothis comparison process while updating the current age of the investorat each subdivided period until the hypothetical life of the investorends, i.e. when the L generated for a subdivided period is less than orequal to the LML for that subdivided period. At such time, the methodrecords the age of the investor during the last subdivided period as theage-at-death for that investor.

At block 250 (FIG. 3E) the method queries whether the current age ofeach living-investor exceeds his/her determined age-at-death. If not,the method proceeds to block 252 and randomly (or pseudo-randomly)generates or draws a rate of return (R) from a rate-of-returndistribution stored in data storage (e.g. device 12). The storeddistribution may include a table of historical returns or a lognormaldistribution with a user-specified mean and standard deviation. Next, atblock 254, the value of each portfolio is adjusted using the rate ofreturn generated at block 252 for the current subdivided period. Cashflow is then determined or computed (block 256) based on each livinginvestor's estimated or anticipated contributions, withdrawals and/ortaxes owed (or accrued) for the current subdivided period. Needless tosay, savings and expenses attributable to a deceased investor will notbe taken into account in this step. At block 258, the value of eachportfolio is adjusted by the cash flow computed at block 256. Beforelooping back to block 250, the age of each living investor isincremented at block 260 by the current subdivided period and thecurrent period is advanced to the next subdivided period. These steps(i.e. of blocks 250-260) are then repeated until the method reaches acalculated future time at which all of the investors in the currenttrial are no longer alive, as determined at block 250. At that point,the results are stored (block 262), the current trial is terminated(block 264), and the trial counter J is incremented by an integer valueof 1 (block 266).

The query at block 268 then determines whether the specified N trialshave been completed by asking if the current value of J is greater thanN? If so, the simulation run is ended at block 270; otherwise, themethod at block 272 resets parameters such as the current age of allinvestors, the trial counter J, and the subdivided period T_(S) to theirinitial values and proceeds to block 242 (FIG. 3D). This processcontinues until L_(MI) is greater than or equal to L_(RI) for allinvestors, indicating at block 274 that all investors have died in thecurrent trial. All of the results are then stored (block 276) and thecurrent trial ends (block 278). Trial counter J is incremented by 1(block 280), and the system determines at block 282 whether theuser-specified N trials have been completed, i.e. whether J is greaterthan N. If the answer is positive then the simulation run is ended atblock 284. If on the other hand the answer is negative, then theparameters including current age of all investors, current value ofcounter J, current subdivided period T_(S), etc. are reset to theirinitial values, and the method, proceeds to block 242 and continues theabove described steps until all trials are completed, i.e. until thecurrent value of counter J is greater than the value of N.

At the end of a simulation run, the user may display the results of thatsimulation run and determine or decide whether another simulation run isdesired. If so, the user may input different initial values forparameters such as inflation rate, mean and standard deviation for arate-of-return distribution, savings and withdrawals, etc.

In another embodiment, there is provided a retirement planning methodfor computing possible future values of a portfolio of an investor,which includes the steps of (a) receiving a plurality of user inputscomprising an initial value of the portfolio and a current age of theinvestor; (b) providing data indicating cumulative probabilities ofliving to an age of death and/or cumulative probabilities dying at anage of death for persons of a given age group; (c) randomly drawing anumber between and including 0 to 1 for the investor; (d) defining therandomly drawn number as either a cumulative probability of living to anage of death or a cumulative probability of dying at an age of death;(e) determining an age of death of the investor in accordance with thedata based on the current age of the investor and the randomly drawnnumber; (f) computing a future value of the portfolio using the age ofdeath of the investor determined in step (e), a predetermined rate ofreturn, and the initial value of the portfolio; and (g) outputting thecomputed future value of the portfolio.

In still another embodiment, a retirement planning method for computinga possible future value of a portfolio of a plurality of jointinvestors, includes the steps of:

(a) receiving user inputs comprising, an initial value of the portfolio,a current age of a first joint investor, and a current age of a secondjoint investor;

(b) providing data indicating one of cumulative probabilities of livingto an age of death and cumulative probabilities dying at an age of deathfor persons of a given age group;

(c) randomly drawing a number between 0 to 1 (which may include one ormore end points) for the first joint investor;

(d) defining the randomly drawn number of step (c) as one of said one ofcumulative probabilities of living to an age of death and cumulativeprobabilities of dying at an age of death for the first joint investor;

(e) determining an age of death of the first joint investor inaccordance with said data, based on the current age of the first jointinvestor and the randomly drawn number of step (c);

(f) randomly drawing a number between 0 to 1 (which may include one ormore end points) for the second joint investor;

(g) defining the randomly drawn number of step (f) as one of said one ofcumulative probabilities of living to an age of death and cumulativeprobabilities of dying at an age of death for the second joint investor;

(h) determining an age of death of the second joint investor inaccordance with said data based on the current age of the second jointinvestor and the randomly drawn number, of step (f);

(i) determining the greater age of death of the first and second jointinvestors by comparing the age of death of the first joint investordetermined in step (e) with the age of death of the second jointinvestor determined in step (h); and

(j) computing a future value of the portfolio using said greater age ofdeath of the joint investors, a predetermined rate of return, and theinitial value of the portfolio; and

(k) outputting the computed future value of the portfolio.

In still another embodiment, a retirement planning method for computinga possible future value of a portfolio of an investor, includes thesteps of (a) receiving user inputs comprising an initial value of theportfolio and a current age of the investor; (b) randomly drawing anumber between 0 to 1 (which may include one or more of the end points);(c) determining a mortality rate of the investor in accordance with amortality table based on the current age of the investor; (d) comparingthe randomly drawn number with the determined mortality rate using apreselected logical relation such, for example, as a logical operatorrepresenting “less than or equal to” (i.e. “≦”) such that:

(1) if the randomly drawn number satisfies the preselected logicalrelation with the determined mortality rate of the investor, define thecurrent age as the age of death of the investor;

(2) if the randomly drawn number does not satisfy the preselectedlogical relation with the determined mortality rate, advance the currentage of the investor to a next age group indicated in the mortality tableand repeat steps (b) through (d);

(e) computing a future value of the portfolio using the age of deathdefined in step (d)(l), a predetermined rate of return, and the initialvalue of the portfolio; and

(f) outputting the computed future value of the portfolio.

In still another embodiment, a retirement planning method for computinga possible future value of a portfolio of an investor, includes thesteps of:

(a) receiving user inputs comprising an initial value of the portfolioand a current age of the investor;

(b) randomly drawing a number between 0 to 1 (which may include one ormore end points);

(c) determining a mortality rate of the investor in accordance with amortality table based on the current age of the investor;

(d) comparing the randomly drawn number with said determined mortalityrate using a preselected logical relation such that:

-   -   (1) if the randomly drawn number satisfies said preselected        logical relation with said determined mortality rate of the        investor, define the current age as the age of death of the        investor;    -   (2) if the randomly drawn number does not satisfy said        preselected logical relation-with said determined mortality        rate, advance the current age of the investor to a next age        group indicated in the mortality table and repeat steps (b)        through (d);

(e) computing a future value of the portfolio using the age of deathdefined in step (d)(1), a predetermined rate of return, and the initialvalue of the portfolio; and

(f) outputting the computed future value of the portfolio.

In yet another embodiment, a retirement planning method for computing apossible future value of a portfolio of a plurality of joint investors,includes the steps of:

(a) receiving user inputs comprising an initial value of the portfolio,a current age of a first joint investor, and a current age of a secondjoint investor;

(b) randomly drawing a number between 0 to 1 (which may include one ormore end points) for the first joint investor;

(c) determining a mortality rate of the first joint investor inaccordance with a mortality table based on the current age of the firstjoint investor;

(d) comparing the randomly drawn number with said determined mortalityrate for the first joint -investor using a preselected logical relationsuch that:

-   -   (1) if the randomly drawn number satisfies said preselected        logical relation with said determined mortality rate of the        first joint investor, define the current age as the age of death        of the first joint investor;    -   (2) if the randomly drawn number does not satisfy said        preselected logical relation with said determined mortality        rate, advance the current age of the investor to a next age        group indicated in the mortality table and repeat steps (b)        through (d);

(e) randomly drawing a number between 0 to 1 (which may include one ormore end points) for the second joint investor;

(f) determining a mortality rate of the second joint investor inaccordance with the mortality table based on the current age of thesecond joint investor;

(g) comparing the randomly drawn number with said determined mortalityrate for the second joint investor using the preselected logicalrelation such that:

-   -   (1) if the randomly drawn number satisfies said preselected        logical relation with said determined mortality rate of the        second joint investor, define the current age as the age of        death of the second joint investor; and    -   (2) if the randomly drawn number does not satisfy said        preselected logical relation with said determined mortality        rate, advance the current age of the investor to a next age        group defined in the mortality table, and repeat steps (e)        through (g);

(h) determining the greater age of death of the joint investors bycomparing the age of death of the first joint investor defined in step(d)(2) with the age of death of the second joint investor defined instep (g)(2);

(i) computing a future value of the portfolio using the greater age ofdeath determined in step (g), a predetermined rate of return, and theinitial value of the portfolio; and

(j) outputting the computed future value of the portfolio.

The random numbers may be drawn so as to provide greater assurance thatthe ages of death derived for the investor over the number of trials aredistributed in a manner similar to that implied by the mortality (orvitality) table. In one embodiment, the interval between 0 and 1 isdivided into a plurality of partitions (e.g., m number of partitions),and a preselected quantity (S_(i)) of random numbers is drawn from eachof the plurality of partitions. The preselected quantity (S_(i)) ofrandom numbers is preferably proportional to the size of thecorresponding partition. Thus, the interval of 0 to 1 may, for example,be divided into three partitions: 0 to 0.1, 0.1 to 0.5, and 0.5 to 1.0(representing 10%, 40%, and 50% of the interval, respectively). For asample size of 1000 random numbers, 100 random numbers may be drawn fromthe partition 0 to 0.1 (the first partition), 400 random numbers from0.1 to 0.5 (the second partition), and 500 from 0.5 to 1.0 (the thirdpartition). The random numbers from each partition may or may notinclude the end points of each partition. Each partition may or may notbe of the same size.

An example is illustrated as follows: For each partition from i =1 to m,select S_(i)random numbers between end points LBOUND and UBOUND whereLBOUND=(Sum of S_(j))/N for j=1 to i−1 (note that LBOUND=0 when i=1),UBOUND =(Sum of _(j))/N for j=1 to i, and N=the total number of randomnumbers. Generate an Age At Death of an investor using each randomnumber in place of the random drawn number called for in any one of themethods described above.

More specifically:

Step 1. Select m as the number of partitions and S(i) as the quantity ofrandom numbers to select from the i^(th) partition.

Step 2. Let N=Sum of S(i) for i=1 to m

Step 3. Let PARTITION_CTR=1

Step 4. Let LBOUND =0

Step 5. Let UBOUND=S(i)

Step 6. Let CUM_SI=S(PARTITION_CTR)

Step 7. Let j =1

Step 8. Let RND a random number between 0 to 1

Step 9. Let RND=(RND*(UBOUND−LBOUND)+LBOUND)/N

Step 10. Generate an Age At Death of an investor using one of the above-described methods using RND in place of the random number.

Step 11. Letj=j+1 Step 12. If j is less than or equal toS(PARTITION_CTR) then goto Step 8, otherwise continue

Step 13. Add 1 to PARTITION_CTR

Step 14. if PARTITION_CTR >m then Stop otherwise continue

Step 15. Let CUM_SI =CUM_SI +S(PARTITION_CTR)

Step 16. Let LBOUND=UBOUND

Step 17. Let UBOUND=CUM_SI

Step 18. Goto Step 7

In another embodiment, the interval of 0 to 1 is divided into a sequenceof numbers uniformly distributed between 0 to 1 , for example: 0.1, 0.2,0.3 ... 0.9. The end points (i.e., 0 to 1 ) may or may not be includedin the sequence. Each of these uniformly distributed numbers may then beused in place of the randomly drawn numbers as described in the aboveembodiments. For example, each of these uniformly distributed numbersmay be used in conjunction with a mortality (or vitality) table todetermine the age of death of an investor for a subdivided period or atrial. Note that this method produces N ages at death distributed as themortality (or vitality) table would imply.

A specific example is illustrated as follows:

Step 1. Start. Select a sample size of N (e.g. 1000).

Step 2. Let a variable RND=0

Step 3. Add 1/(N+1) to RND Step 4. Generate an Age At Death using any ofthe above-described methods using RND in place of the randomly drawnnumber.

Step 5. If RND >=N/(N+1) then stop. Otherwise return to Step 3.

As stated above, as an alternative to using the mortality tables toselect a life expectancy of an investor, ages at death can be derivedfrom a mortality table, a vitality table, a mortality table withcumulative probabilities, or a vitality table with cumulativeprobabilities. Moreover, such ages can be randomly generated by thefollowing inventive techniques, which can, alternatively, be used togenerate an age of death for use in the embodiments disclosed above.

Method 1. Using Mortality table

Step 1. Start. Let the Age at Death equal the current age of the person.

Step 2. Increment the Age At Death by one time period (e.g. by oneyear).

Step 3. Look up probability of dying at the Age at Death in this periodin the mortality table.

Step 4. Generate a random number uniformly distributed between 0 to 1 .If the random number is less than the probability of death, then stop.Otherwise return to Step 2.

Method 2. Using Vitality table

Step 1. Start. Let the Age At Death equal the current age of the person.

Step 2. Increment the Age At Death by one time period (e.g. by oneyear).

Step 3. Look up probability of living through this period in thevitality table.

Step 4. Generate a random number uniformly distributed between 0 to 1 .If the random number is greater than or equal to the probability ofliving, then stop. Otherwise return to Step 2.

Method 3. Using Mortality table with Cumulative Probabilities

Step 1. Start.

Step 2. Generate a random number uniformly distributed between 0 to 1.

Step 3. Using the Mortality table with the Cumulative Probabilitiestable, find the age which most closely corresponds to the probabilitygenerated in Step 2. This age is the Age at Death.

Method 3a. Using Mortality Table (more general case of Method 3)

Step 1. Start

Step 2. Divide the segment 0-1 into intervals representing all thepossible ages at death for a person. The size of each intervalcorresponds to the probability of dying at that age.

Step 3. Generate a random number uniformly distributed between 0 to 1.

Step 4. Identify the interval which contains the random number generatedin Step 3. The age at death is the age which corresponds with thisinterval.

Method 4. Using Vitality table with Cumulative Probabilities

Step 1. Start.

Step 2. Generate a random number uniformly distributed between 0 to 1.

Step 3. Using the Vitality table with Cumulative Probabilities table,find the age which most closely corresponds to the probability generatedin Step 2. This age is the Age At Death.

Each of the above methods generates one age at death. The methods can beperformed repeatedly to generate a sample set of ages at death. Thesample will reflect the distribution of ages at death implied by thetable used (e.g. mortality, vitality, etc.). However, any given samplemay have an average or other distribution (substantially) different fromthat implied by the table. All of the above methods are based on randomnumbers uniformly distributed between 0 to 1 and may be used forrandomly generating ages at death may be used for more than one person(e.g. a couple) by repeating the process for each person.

Method 5. Stratified sampling. This method provides greater assurancethat the sample set of ages of death will be distributed as themortality (vitality) table would imply. It divides the 0-1 interval intom partitions and generates S(i) random numbers [S(1). . . S(m)] in eachpartition for a total sample size N=Sum[S(i)] for i=1 to m.

For each partition i=1 to m, select Si random numbers between LBOUND andUBOUND where LBOUND=Sum(Sj)/N for j=1 to i−1 (note LBOUND=0 when i=1)and UBOUND=Sum(Sj)/N for j =1 to i. Generate an Age At Death using eachrandom number as the input in place of the random number called for inone of the 4 methods described above. This method is explained furtherin the following example.

Step 1. Select m as the number of partitions and Si as the number ofrandom numbers to select in the i^(th) partition.

Step 2. Let N =Sum[S(i)] for i=1 to m

Step 3. Let PARTITION_CTR=1

Step 4. Let LBOUND=0

Step 5. Let UBOUND=S(i)

Step 6. Let CUM_SI=(PARTITION_CTR)

Step 7. Let j=1

Step 8. Let RND=a random number between 0 to 1

Step 9. Let RND=(RND*(UBOUND−LBOUND)+LBOUND)/N

Step 10. Generate an Age At Death using one of the 4 methods describedabove using RND in place of the random number.

Step 11. Let j=j+1

Step 12. Ifj ≦S(PARTITION_CTR) then go to Step 8, otherwise continue

Step 13. Add 1 to PARTITION_CTR

Step 14. if PARTITION_CTR>m then Stop otherwise continue

Step 15. Let CUM_SI=CUM_SI+S(PARTITION_CTR)

Step 16. Let LBOUND=UBOUND

Step 17. Let UBOUND=CUM_SI

Step 18. Go to Step 7

The following routine generates a set of ages distributed very closelyto that implied by the table. It is similar to Method 5 in which M=N andS=1. The following method generates N numbers uniformly distributedbetween 0 to 1 . These numbers are used to generate the ages at death.It should be noted that there is no randomness implied by the followingmethod. Rather it produces N ages at death distributed as the mortality(vitality) table would imply.

Method 6.

Step 1. Start. Select a sample size of N (e.g. 1000).

Step 2. Let a variable RND=0

Step 3. Add 1/(n+1) to RND

Step 4. Generate an Age at Death using one of the 4 methods describedusing RND in place of the random number.

Step 5. If RND≧n/(n+1) then stop. Otherwise return to Step 3.

The following routine generates pairs of ages at death Method 7.(Similar to Method 3a)

Method 3a. Using Mortality Table (more general case of Method 3)

Step 1. Start

Step 2. Divide the segment 0-1 into intervals representing all thepossible pairs of ages at death for a couple. The size of each intervalcorresponds to the probability of dying at those ages.

Step 3. Generate a random number uniformly distributed between 0 to 1.

Step 4. Identify the interval which contains the random number generatedin Step 3. The ages at death are the ages which correspond to thisinterval.

Projections are often used in investment planning, particularly forretirement. In such a projection, the portfolio value is projected givenan initial value, a series of expected cash flows, a time horizon, and aseries of rates of return. Conventional methods assume a fixed timehorizon and a fixed rate of return. In a retirement planning situation,the investor(s) wants to be able to project the portfolio value untilhis (their) death. Obviously the age at death is uncertain. It is,therefore, beneficial to calculate a number (N) of portfolio projectionsor trials for a set of ages at death. One technique for accomplishingthis is described below.

Each trial is assigned a corresponding age at death which determines thelength of time the trial will run. The age of death can be derived orcalculated or selected from any of the methods disclosed above. An ageat death may be derived for each member of a couple (or even a group).The trial will end when the last person in the group dies. The portfoliovalue is initialized to a beginning or initial value. For each period inthe projection the portfolio value is updated basal on a rate of return(either fixed or randomly generated) The portfolio value is adjusted forany cash flows expected to occur within that period. A trial may beterminated early (before death) if the portfolio runs out of money, orthe value may be allowed to assume negative values. A trial isconsidered a success if the ending portfolio value exceeds some targetvalue. Otherwise it is a failure.

Running large numbers of trials lets a user of the method derive orcalculate success of a particular portfolio based on the selectedvariables. The distribution of portfolio values at various time periods(e.g. after 1 year, 5 years, 10 years etc.) can also be examined and aset of ages at death can be generated by running any of the abovemethods N times to create N projections. Alternatively, we could usesany of methods 1-4 to calculate an age at death. Then we could aprojection using this age. We could repeat these steps N times. Stillanother alternative is to create a projection that determines the age ofdeath as the projection is created. This requires using method 1 or 2. Aloop (as described in each method) is performed that also updates theportfolio value and tests whether the person is still alive. The loopcontinues until the person or the last person in the couple or groupdies.

It should be appreciated that although the time periods are typicallyyearly increments, the method could be used for other periods (e.g.months or days). Allowing the ages at death to vary lends itself well tomodeling cash flows that depend upon that age at death such as lifeinsurance and social security payments. Alternatively, cumulative tablescould show a lifespan (number of years to live) instead of an age.Moreover, fractional ages can be used by interpolating values in themortality or vitality tables.

It is contemplated that the inventive method also allows a user tospecie a variety of spending rules for an investor. Illustrativeexamples of such spending rules include: spending 5% of the portfoliovalue of a previous subdivided period T,; spending 3% of the averagevalue of the portfolio value over a period of time (e.g. 5 years); orinitially spending 5% of the portfolio value and then adjusting theportfolio value by the anticipated inflation rate, but not allowing theinvestor's spending to exceed a specified maximum percentage and/or fallbelow a specified minimum percentage.

It is also contemplated that the method take into account an investor'sexpected or anticipated inheritance by, for example, applying themortality table to his/her benefactor in the manner described above. Itis further contemplated that the incorporate the effect of taxes on thevalue of each portfolio. Separate portfolios for taxable, tax-deferred(e.g. traditional IRA) and tax-exempt (e.g. Roth IRA) accounts may beassumed. Furthermore, different return and risk assumptions may bespecified for each portfolio. Importantly, the correlation coefficientof the returns among the asset classes (e.g. bonds, large cap stocks,small cap stocks) may also be specified by the user. For each subdividedperiod T_(S), rates of return may be randomly or pseudo-randomly drawnfrom different distributions having an assumed mean and standarddeviation. In addition, the assumed rates of return may be drawn fromdistributions that are correlated with each other.

For taxable accounts, the method will recognize and take into accountthat the realized gains, based on a user-defined cost basis, turnoverand tax rates, will be taxed at capital gains rates, while income (basedon yield) will be taxed at ordinary income tax rates. Similarity,withdrawals from tax deferred accounts will be taxed at ordinary incometax rates while tax-exempt accounts will not be taxed.

It is also contemplated that the method allows the user to specifydynamic return-and-risk assumptions. Dynamic return-and-risk assumptionsrefer to the variation of the mean and standard deviation for therate-of-return distribution for each trial. This assumption may be basedfor example on the passage of time (e.g. for modeling an investor whohas become more conservative over time), an event (e.g. retirement of aninvestor), or the portfolio value itself relative to a stated goal (e.g.the calculated return required to meet the stated goal).

It is further intended that the stored mortality table be updated atappropriate times.

It is also contemplated that the inventive method allows the projectedreturn to be based directly on historical returns. Thus, by a databaseof historical returns for various asset classes the inventive method andapparatus can generate a return for a subdivided period T_(S) byrandomly drawing a rate of return from a historical period and applyingthat rate to each investment portfolio for that subdivided period T_(S).

It should additionally be understood that although the inventive methodhas been described in connection with the disclosed hardware system 10,it may also be applied to a general-purpose digital computerincorporating the appropriate hardware architecture and elements.

Thus, while there have shown and described and pointed out fundamentalnovel features of the invention as applied to preferred embodimentsthereof, it will be understood that various omissions and substitutionsand changes in the form and details of the methods described and devicesillustrated, and in their operation, may be made by those skilled in theart without departing from the spirit of the invention. For example, itis expressly intended that all combinations of those elements and/ormethod steps which perform substantially the same function insubstantially the same way to achieve the same results are within thescope of the invention.

Moreover, it should be recognized that structures and/or elements and/ormethod steps shown and/or described in connection with any disclosedform or embodiment of the invention may be incorporated in any otherdisclosed or described or suggested form or embodiment as a generalmatter or design choice.

1. A computer implemented method, comprising: (a) receiving, using adata processing system, user inputs comprising an initial value of aportfolio and a current age of an investor; (b) randomly generating,using the data processing system, a number between 0 to 1; (c)determining, using the data processing system, a mortality rate of theinvestor in accordance with a mortality table based on the current ageof the investor; (d) comparing, using the data processing system, therandomly drawn number with said determined mortality rate using apreselected logical relation such that: (1) if the randomly drawn numbersatisfies said preselected logical relation with said determinedmortality rate of the investor, define the current age as the age ofdeath of the investor; (2) if the randomly drawn number does not satisfysaid preselected logical. relation with said determined mortality rate,advance the current age of the investor to a next age group indicated inthe mortality table and repeat steps (b) through (d); (e) computing,using the data processing system, a future value of the portfolio usingthe age of death defined in step (d)(1), a predetermined rate of return,and the initial value of the portfolio; and (f) outputting the computedfuture value of the portfolio.
 2. The method of claim 1, wherein saidpreselected logical relation is a logical operator representing lessthan or equal to (i.e. ≦).
 3. The method of claim 1, wherein the userinputs further include a mortality factor and the mortality tablefurther includes said mortality factor, said mortality factor being thegender of the investor.
 4. The method of claim 3, wherein the userinputs further include another mortality factor and the mortality tableincludes said another mortality factor, said another mortality factorbeing the racial group of the investor.
 5. The method of claim 1,wherein the user inputs include the predetermined rate of return.
 6. Themethod of claim 1, wherein the user inputs further include an averagerate of return and a standard deviation for defining a lognormaldistribution of rates of return, and the predetermined rate of return israndomly selected from the lognormal distribution of rates of return. 7.The method of claim 1, wherein said determining step further comprisesdetermining, using the data processing system, the mortality rate of theinvestor in accordance with a cumulative probabilities table based onthe current age of the investor.